home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / nihcl-30.lha / nihcl-3.0 / ex / ArrayPartial.h < prev    next >
C/C++ Source or Header  |  1990-05-15  |  1KB  |  39 lines

  1. #ifndef ArrayPartialH
  2. #define ArrayPartialH
  3.  
  4. // ArrayPartial.h -- Array of Partial derivatives
  5.  
  6. // $Header: /afs/alw.nih.gov/unix/sun4_40c/usr/local/src/nihcl-3.0/share/ex/RCS/ArrayPartial.h,v 3.0 90/05/15 22:43:23 kgorlen Rel $
  7.  
  8. #include "Partial.h"
  9.  
  10. class ostream;
  11. class Matrix;
  12. class MatrixRow;
  13.  
  14. class ArrayPartial {
  15.     Partial* p;
  16.     int sz;
  17. public:
  18.     ArrayPartial(int siz, double*);
  19.     ArrayPartial(int siz, Partial* =0);
  20.     ArrayPartial(const ArrayPartial&);
  21.     ~ArrayPartial();
  22.  
  23.     void operator=(const ArrayPartial&);
  24.     int size() const { return sz; }
  25.     Partial& at(int Kth) const { return p[Kth]; }
  26.     Partial& operator[](int Kth) const;
  27.     void operator+=(const Matrix&);
  28.  
  29.     Matrix value() const;
  30.     Matrix jacobian() const;
  31.     ArrayPartial operator+(const ArrayPartial&);
  32.     friend ArrayPartial operator*(double,const ArrayPartial&);
  33.     friend ArrayPartial operator*(const Matrix&,
  34.                                   const ArrayPartial&);
  35.     
  36.     virtual void printOn(ostream& strm) const;
  37. };
  38. #endif /*ArrayPartialH*/
  39.